import Vue from "vue";
import VueRouter from "vue-router";
import Login from "../components/Login.vue";
import Home from "../components/Home.vue";
import Breadcrumb from '../components/Breadcrumb.vue'
import Users from '../components/user/Users.vue'
import Rights from '../components/power/Rights.vue'
import Roles from '../components/power/Roles.vue'
import Cate from '../components/goods/Cate.vue'
import Params from '../components/goods/Params.vue'
import GoodList from '../components/goods/List.vue'
import Add from '../components/goods/Add.vue'
import Edit from '../components/goods/Edit.vue'
import Order from '../components/order/Order.vue'
import Report from '../components/report/Report.vue'
Vue.use(VueRouter);

const routes = [
  { path: '/', redirect: '/login' },
  { path: '/login', component: Login },
  {
    path: '/home',
    component: Home,
    redirect: '/Breadcrumb',
    children: [
      { path: '/Breadcrumb', component: Breadcrumb },
      { path: '/users', component: Users },
      { path: '/rights', component: Rights },
      { path: '/roles', component: Roles },
      { path: '/categories', component: Cate },
      { path: '/params', component: Params },
      { path: '/goods', component: GoodList },
      { path: '/goods/add', component: Add },
      { path: '/goods/edit', component: Edit },
      { path: '/orders', component: Order },
      { path: '/reports', component: Report },
    ],
  },
]

const router = new VueRouter({
  routes,
});
//挂载路由守卫
router.beforeEach((to, from, next) => {
  //to 将要访问的路径
  //from 代表从哪个路径跳转而来
  //next 是一个函数， 表示放行
  // next() 放行  next('/login') 强制跳转
  // 如果访问的是登录界面则直接放行
  if (to.path === "/login") return next();
  //获取用户页面token信息
  let token = window.sessionStorage.getItem("token");
  //如果token数据为null则跳转到指定路径
  if (!token) return next("/login");
  next();
});

export default router;
